#ifndef _DISH_ENV_H
#define _DISH_ENV_H

enum {
	ARFLAGS = 0,
	IFS,
	MAILPATH,
	PS1,
	CC,
	LANG,
	MAILRC,
	PS2,
	CDPATH,
	LC_ALL,
	MAKEFLAGS,
	PS3,
	CFLAGS,
	LC_COLLATE,
	MAKESHELL,
	PS4,
	CHARSET,
	LC_CTYPE,
	MANPATH,
	PWD,
	COLUMNS,
	LC_MESSAGES,
	MBOX,
	RANDOM,
	DATEMSK,
	LC_MONETARY,
	MORE,
	SECONDS,
	DEAD,
	LC_NUMERIC,
	MSGVERB,
	SHELL,
	EDITOR,
	LC_TIME,
	NLSPATH,
	TERM,
	ENV,
	LDFLAGS,
	NPROC,
	TERMCAP,
	EXINIT,
	LEX,
	OLDPWD,
	TERMINFO,
	FC,
	LFLAGS,
	OPTARG,
	TMPDIR,
	FCEDIT,
	LINENO,
	OPTERR,
	TZ,
	FFLAGS,
	LINES,
	OPTIND,
	USER,
	GET,
	LISTER,
	PAGER,
	VISUAL,
	GFLAGS,
	LOGNAME,
	PATH,
	YACC,
	HISTFILE,
	LPDEST,
	PPID,
	YFLAGS,
	HISTORY,
	MAIL,
	PRINTER,
	HISTSIZE,
	MAILCHECK,
	PROCLANG,
	HOME,
	MAILER,
	PROJECTDIR
};

/* defined in env.c */
int env_fromfile(char* file);
void env_reload(void);
void env_clear(void);
void env_refresh(void);
int env_set(char* name, char* value, int global);
int env_set_int(char* name, int value, int global);
char* env_get(char* name);
char** env_toclist(void);
void env_push(void);
void env_pop(void);

#endif
